package com.jwsoft.manager.core.integration;

import com.github.pagehelper.PageInfo;
import com.jwsoft.manager.common.vo.cache.EduOperationCacheDetailVO;
import com.jwsoft.manager.common.vo.cache.EduOperationCacheQueryVO;
import com.jwsoft.manager.common.vo.cache.EduOperationCacheVO;
import com.jwsoft.manager.common.vo.eduSystemConfig.EduSystemConfigFuncQueryVO;
import com.jwsoft.manager.common.vo.eduSystemConfig.EduSystemConfigKeyVO;
import com.jwsoft.manager.common.vo.eduSystemConfig.EduSystemConfigQueryVO;
import com.jwsoft.manager.common.vo.eduSystemConfig.EduSystemConfigVO;

/**
 * 教育系统配置业务本地接口
 *
 * @author dlb
 * @since 2023-02-02
 */
public interface EduSystemConfigIntegration {
    /** 分页查询 */
    PageInfo<EduSystemConfigVO> getList(EduSystemConfigQueryVO vo);
    /** 根据主键查询详情 */
    EduSystemConfigVO getById(EduSystemConfigKeyVO vo);
    /** 保存前统一校验*/
    void checkSave(EduSystemConfigVO vo);
    /** 新增 */
    EduSystemConfigVO add(EduSystemConfigVO vo);
    /** 修改 */
    EduSystemConfigVO edit(EduSystemConfigVO vo);
    /** 根据主键删除 */
    void del(EduSystemConfigKeyVO vo);

    /** 根据统筹区和key获取功能编号 */
    String getFuncCode(EduSystemConfigFuncQueryVO vo);

    /** 清楚缓存 */
    void clearCache(String areaCode,String eduConfigKey);
    /**
     * 获取时间控制参数
     * **/
    EduOperationCacheVO getEduOperation(EduOperationCacheQueryVO vo);
    /**
     * 获取单个业务控制参数
     * **/
    EduOperationCacheDetailVO getEduOperationOne(EduOperationCacheQueryVO vo);
    /**
     * 时间控制参数校验
     * */
    void checkOperation(EduOperationCacheVO eduOperationCacheVO ,String operation);
    /**
     * 教育相关业务期单个校验
     * */
    void checkOperation(EduOperationCacheQueryVO vo);


}
